﻿

//////
// multi-level inheritance test

$class(
"Test.A",
{
	_ctor: function () { alert($argument("foo") + "A"); },
	x: 4,
	hi: function () { alert('hi from A'); },
	sup: function () { alert('sup'); }
});

$class(
"Test.B : Test.A",
{
	_ctor: function () { alert($argument("foo") + "B"); },
	y: 5,
	hi: function () { alert('hi from B. ' + (this.y + this.x).toString()); },
	sup2: function () { alert('sup2'); }
});

$class(
"Test.C : Test.B",
{
	_ctor: function () { alert($argument("foo") + "C"); },
	z: 100,
	hi: function () { alert(' hi from C. ' + (this.z + this.y + this.x).toString()); this.sup2(); this.sup(); }
});




var x = new Test.C({foo:"BAR!"});
x.hi();

